Information management applications provide users with effective and convenient ways to communicate with others and manage their information. Examples of information management applications include but are not limited to email applications and calendar applications. Some information management applications integrate these various types of applications by way of modules, such as email, calendar, contact, and task modules, although each type of application or functionality may also be provided in a stand-alone manner. Microsoft® Outlook® is one example of an information management application.
While many information management applications are provided as locally installed and executed applications, many can be experienced in a wide variety of ways. For example, some information management applications are available as web-based applications that are experienced through a browser application, as mobile applications customized for mobile environments, or even as a mobile web-based application generally developed for a mobile browser experience. In addition, information management applications can be experienced on a wide variety of computing devices, such as desktop, laptop, or tablet computers, mobile phones, gaming systems, Internet appliances, or any other physical or virtual computing system, variation, or combination thereof.
Many information management applications are implemented, at least in part, using single threaded programming languages such as JavaScript. In execution, only one task or module may execute at a time. This means that a task triggered by a user interaction, such as a task associated with opening a folder or an email, may not run until other scheduled tasks are finished executing.
From the standpoint of a user, this type of execution can lead to slow and frustrating user experiences. For instance, when navigating to a folder containing a large number of emails, a user may select an email that is already available for viewing. However, the user may be prevented from viewing the email until all of the other emails have loaded. Not only is this experience frustrating, but at times error conditions can occur that create failures and other operational problems.